using UnityEngine;
using UnityEngine.UI;

public class DisplayDistanceText : MonoBehaviour
{
    [SerializeField] private Text _distanceText; // 显示距离的TextMeshProUGUI组件
    [SerializeField] private Transform _playerTrans; // 玩家的Transform组件

    private Vector2 _startPosition; // 起始位置

    private void Start()
    {
        _startPosition = _playerTrans.position; // 记录玩家的初始位置
    }

    private void Update()
    {
        Vector2 distance = (Vector2)_playerTrans.position - _startPosition; // 计算玩家相对于起始位置的距离
        distance.y = 0f; // 只关心水平方向的距离

        if (distance.x < 0)
        {
            distance.x = 0; // 距离不会为负数，最小为0
        }

        _distanceText.text = distance.x.ToString("F0") + "m"; // 更新显示距离的文本，保留0位小数并添加单位“m”
    }
}